<?php

require_once(BaseConfig::LoadClass('objeto_base.class.php'));
require_once(BaseConfig::LoadClass('filtro.class.php'     ));
require_once(BaseConfig::LoadClass('abc.class.php'        ));

class DatosCotizacion extends ObjetoBase {
  var $intIdDatoCotizacion;
  var $intIdCotQualitas   ;
  var $dteFechaEntrada    ;
  var $strAPaterno        ;
  var $strAMaterno        ;
  var $strNombre          ;
  var $strTelefono        ;
  var $dteFecNac          ;
  var $intSexo            ;
  var $strEmail           ;
  var $intEstado          ;
  var $intMunicipio       ;
  var $intColonia         ;
  var $intCP              ;
  var $strTipoUso         ;
  var $intMarca           ;
  var $intMarcaAnio       ;
  var $intSISA            ;
  var $fltDeducibleDM     ;
  var $fltDeducibleRT     ;
  var $fltCoberturaRC     ;
  var $fltCoberturaGM     ;
  var $intPaquete         ;
  var $intFormaPago       ;
  var $intConductoPago    ;
  var $intIdVendedor      ;

  function DatosCotizacion($intIdDatoCotizacion = 0) {
    $arrMapaDatos = Array();
    
    $arrMapaDatos['id_dato_cotizacion'    ] = Array('NombreVariable' => 'intIdDatoCotizacion', 'TipoVariable' => 'I');
    $arrMapaDatos['id_cotizacion_qualitas'] = Array('NombreVariable' => 'intIdCotQualitas'   , 'TipoVariable' => 'N');
    $arrMapaDatos['fecha_entrada'         ] = Array('NombreVariable' => 'dteFechaEntrada'    , 'TipoVariable' => 'D');
    $arrMapaDatos['apaterno'              ] = Array('NombreVariable' => 'strAPaterno'        , 'TipoVariable' => 'S');
    $arrMapaDatos['amaterno'              ] = Array('NombreVariable' => 'strAMaterno'        , 'TipoVariable' => 'S');
    $arrMapaDatos['nombre'                ] = Array('NombreVariable' => 'strNombre'          , 'TipoVariable' => 'S');
    $arrMapaDatos['telefono'              ] = Array('NombreVariable' => 'strTelefono'        , 'TipoVariable' => 'S');
    $arrMapaDatos['fec_nac'               ] = Array('NombreVariable' => 'dteFecNac'          , 'TipoVariable' => 'D');
    $arrMapaDatos['sexo'                  ] = Array('NombreVariable' => 'intSexo'            , 'TipoVariable' => 'N');
    $arrMapaDatos['email'                 ] = Array('NombreVariable' => 'strEmail'           , 'TipoVariable' => 'S');
    $arrMapaDatos['estado'                ] = Array('NombreVariable' => 'intEstado'          , 'TipoVariable' => 'N');
    $arrMapaDatos['municipio'             ] = Array('NombreVariable' => 'intMunicipio'       , 'TipoVariable' => 'N');
    $arrMapaDatos['colonia'               ] = Array('NombreVariable' => 'intColonia'         , 'TipoVariable' => 'N');
    $arrMapaDatos['cp'                    ] = Array('NombreVariable' => 'intCP'              , 'TipoVariable' => 'N');
    $arrMapaDatos['tipo_uso'              ] = Array('NombreVariable' => 'strTipoUso'         , 'TipoVariable' => 'S');
    $arrMapaDatos['marca'                 ] = Array('NombreVariable' => 'intMarca'           , 'TipoVariable' => 'N');
    $arrMapaDatos['marca_anio'            ] = Array('NombreVariable' => 'intMarcaAnio'       , 'TipoVariable' => 'N');
    $arrMapaDatos['sisa'                  ] = Array('NombreVariable' => 'intSISA'            , 'TipoVariable' => 'N');
    $arrMapaDatos['deducible_dm'          ] = Array('NombreVariable' => 'fltDeducibleDM'     , 'TipoVariable' => 'N');
    $arrMapaDatos['deducible_rt'          ] = Array('NombreVariable' => 'fltDeducibleRT'     , 'TipoVariable' => 'N');
    $arrMapaDatos['cobertura_rc'          ] = Array('NombreVariable' => 'fltCoberturaRC'     , 'TipoVariable' => 'N');
    $arrMapaDatos['cobertura_gm'          ] = Array('NombreVariable' => 'fltCoberturaGM'     , 'TipoVariable' => 'N');
    $arrMapaDatos['paquete'               ] = Array('NombreVariable' => 'intPaquete'         , 'TipoVariable' => 'N');
    $arrMapaDatos['forma_pago'            ] = Array('NombreVariable' => 'intFormaPago'       , 'TipoVariable' => 'N');
    $arrMapaDatos['conducto_pago'         ] = Array('NombreVariable' => 'intConductoPago'    , 'TipoVariable' => 'N');
    $arrMapaDatos['id_vendedor'           ] = Array('NombreVariable' => 'intIdVendedor'      , 'TipoVariable' => 'N');

    $this->__ArmarDatosPrivados('datos_cotizacion', $arrMapaDatos, 'id_dato_cotizacion');
    $this->SeleccionarPorIndice($intIdDatoCotizacion);
  }
  
  function ObtenerDesdeObjetoQualitas($intIdDatoCot) {
    $oConecta = new Conecta();
    // Primero obtenemos los datos del objeto QUALITAS
    $strConsulta = "SELECT * FROM datos_cotizacion_qualitas WHERE id_dato_cotizacion = $intIdDatoCot";
    $oConecta->Consulta($strConsulta);
    $arrDatos = $oConecta->GetColumn();
    
    $this->intIdCotQualitas = $arrDatos["id_dato_cotizacion"];
    $this->dteFechaEntrada  = $arrDatos["fecha_entrada"     ];
    $this->strAPaterno      = $arrDatos["apaterno"          ];
    $this->strAMaterno      = $arrDatos["amaterno"          ];
    $this->strNombre        = $arrDatos["nombre"            ];
    $this->dteFecNac        = $arrDatos["fecha_nac"         ];
    $this->intSexo          = $arrDatos["sexo"              ];
    $this->intEstado        = $arrDatos["estado"            ];
    $this->intMunicipio     = $arrDatos["municipio"         ];
    $this->intColonia       = $arrDatos["colonia"           ];
    $this->intCP            = $arrDatos["cp"                ];
    $this->intMarcaAnio     = $arrDatos["marca_anio"        ];
    $this->intIdVendedor    = $arrDatos["id_vendedor"       ];
    
    // Obtener el SISA
    $strConsulta = "SELECT cve_aig FROM cat_modelos_antartica WHERE id_modelo = {$arrDatos["amis"]}";
    $oConecta->Consulta($strConsulta);
    $this->intSISA          = $oConecta->Field('cve_aig');
    
    // Obtener la marca
    $strConsulta = "SELECT id_marca_aig FROM cat_marcas_antartica_aig WHERE nombre_antartica = '{$arrDatos["marca"]}'";
    $oConecta->Consulta($strConsulta);
    $this->intMarca          = $oConecta->Field('id_marca_aig');
    
    $this->strTelefono      = "(555) 5555 - 5555";
    $this->strEmail         = "a@a.com";
    $this->strTipoUso       = "PARTICULAR";
    $this->fltDeducibleDM   = "5.0000";
    $this->fltDeducibleRT   = "10.0000";
    $this->fltCoberturaRC   = "2000000.0000";
    $this->fltCoberturaGM   = "50000.0000";
    $this->intPaquete       = "1";
    $this->intFormaPago     = "1";
    $this->intConductoPago  = "1";
    
    $this->GuardarObjeto(true, true);
  }
}

class FiltroDatosCotizacion extends Filtro {
  function FiltroDatosCotizacion() {
    $arrProceso = array();
    $arrProceso['fecha_entrada'] = "Fecha de Cotizacion"  ;
    $arrProceso['apaterno'     ] = "Apellido Paterno"     ;
    $arrProceso['amaterno'     ] = "Apellido Materno"     ;
    $arrProceso['nombre'       ] = "Nombre"               ;
    $arrProceso['telefono'     ] = "Telefono"             ;
    $arrProceso['fec_nac'      ] = "Fecha de Nacimiento"  ;
    $arrProceso['sexo'         ] = "Sexo"                 ;
    $arrProceso['email'        ] = "Email"                ;
    $arrProceso['estado'       ] = "Estado"               ;
    $arrProceso['municipio'    ] = "Municipio"            ;
    $arrProceso['colonia'      ] = "Colonia"              ;
    $arrProceso['cp'           ] = "Codigo Postal"        ;
    $arrProceso['tipo_uso'     ] = "Tipo de Uso"          ;
    $arrProceso['marca'        ] = "Marca"                ;
    $arrProceso['marca_anio'   ] = "Anio Marca"           ;
    $arrProceso['sisa'         ] = "Codigo SISA"          ;
    $arrProceso['deducible_dm' ] = "Deducible DM"         ;
    $arrProceso['deducible_rt' ] = "Deducible RT"         ;
    $arrProceso['cobertura_rc' ] = "Cobertura RC"         ;
    $arrProceso['cobertura_gm' ] = "Cobertura GM"         ;
    $arrProceso['paquete'      ] = "Paquete"              ;
    $arrProceso['forma_pago'   ] = "Forma de pago"        ;
    $arrProceso['conducto_pago'] = "Conducto de Pago"     ;
    
    $arrReferencias = array();
    $arrReferencias["sexo"         ]["tabla"]["nombre"] = "cat_sexos"         ;
    $arrReferencias["sexo"         ]["tabla"]["indice"] = "id_sexo"           ;
    $arrReferencias["sexo"         ]["tabla"]["desc"  ] = "nombre"            ;
    
    $arrReferencias["estado"       ]["tabla"]["nombre"] = "cat_estados"       ;
    $arrReferencias["estado"       ]["tabla"]["indice"] = "id_estado"         ;
    $arrReferencias["estado"       ]["tabla"]["desc"  ] = "nombre"            ;
    $arrReferencias["estado"       ]["tabla"]["orden" ] = "nombre"            ;
    
    $arrReferencias["marca"        ]["tabla"]["nombre"] = "cat_marcas"        ;
    $arrReferencias["marca"        ]["tabla"]["indice"] = "id_marca"          ;
    $arrReferencias["marca"        ]["tabla"]["desc"  ] = "nombre"            ;
    $arrReferencias["marca"        ]["tabla"]["orden" ] = "nombre"            ;
    
    $arrReferencias["paquete"      ]["tabla"]["nombre"] = "cat_paquetes"      ;
    $arrReferencias["paquete"      ]["tabla"]["indice"] = "id_paquete"        ;
    $arrReferencias["paquete"      ]["tabla"]["desc"  ] = "nombre"            ;
    
    $arrReferencias["forma_pago"   ]["tabla"]["nombre"] = "cat_formas_pago"   ;
    $arrReferencias["forma_pago"   ]["tabla"]["indice"] = "id_forma_pago"     ;
    $arrReferencias["forma_pago"   ]["tabla"]["desc"  ] = "nombre"            ;
    
    $arrReferencias["conducto_pago"]["tabla"]["nombre"] = "cat_conductos_pago";
    $arrReferencias["conducto_pago"]["tabla"]["indice"] = "id_conducto_pago"  ;
    $arrReferencias["conducto_pago"]["tabla"]["desc"  ] = "nombre"            ;
    
    $arrReferencias["id_vendedor"  ]["tabla"]["nombre"] = "vendedores"        ;
    $arrReferencias["id_vendedor"  ]["tabla"]["indice"] = "id_vendedor"       ;
    $arrReferencias["id_vendedor"  ]["tabla"]["desc"  ] = "nombre"            ;
    
    parent::CrearFiltro("datos_cotizacion", "id_dato_cotizacion", $arrProceso, "Busqueda", "", "fecha_entrada DESC", "DatosCotizacion", $arrReferencias);
  }
}

class ABC_DatosCotizacion extends ABC_Base {
  function ABC_DatosCotizacion() {
    $strClaseBase     = "DatosCotizacion"         ;
    $strClaseFiltro   = "FiltroDatosCotizacion"   ;
    $strCampoMostrar  = "apaterno,amaterno,nombre";
    $strOpcionListado = "abc_datos_cotizacion"    ;
    $strOpcionGuardar = "abc_datos_cotizacion"    ;

    $arrProceso = array();
    $arrProceso['fecha_entrada'         ] = "Fecha de Cotizacion"  ;
    $arrProceso['id_cotizacion_qualitas'] = "Cotizacion Qualitas"  ;
    $arrProceso['apaterno'              ] = "Apellido Paterno"     ;
    $arrProceso['amaterno'              ] = "Apellido Materno"     ;
    $arrProceso['nombre'                ] = "Nombre"               ;
    $arrProceso['telefono'              ] = "Telefono"             ;
    $arrProceso['fec_nac'               ] = "Fecha de Nacimiento"  ;
    $arrProceso['sexo'                  ] = "Sexo"                 ;
    $arrProceso['email'                 ] = "Email"                ;
    $arrProceso['estado'                ] = "Estado"               ;
    $arrProceso['municipio'             ] = "Municipio"            ;
    $arrProceso['colonia'               ] = "Colonia"              ;
    $arrProceso['cp'                    ] = "Codigo Postal"        ;
    $arrProceso['tipo_uso'              ] = "Tipo de Uso"          ;
    $arrProceso['marca'                 ] = "Marca"                ;
    $arrProceso['marca_anio'            ] = "Anio Marca"           ;
    $arrProceso['sisa'                  ] = "Codigo SISA"          ;
    $arrProceso['deducible_dm'          ] = "Deducible DM"         ;
    $arrProceso['deducible_rt'          ] = "Deducible RT"         ;
    $arrProceso['cobertura_rc'          ] = "Cobertura RC"         ;
    $arrProceso['cobertura_gm'          ] = "Cobertura GM"         ;
    $arrProceso['paquete'               ] = "Paquete"              ;
    $arrProceso['forma_pago'            ] = "Forma de pago"        ;
    $arrProceso['conducto_pago'         ] = "Conducto de Pago"     ;
    $arrProceso['id_vendedor'           ] = "Vendedor"             ;
    
    $arrReferencias = array();
    $arrReferencias["sexo"         ]["tabla"]["nombre"] = "cat_sexos"         ;
    $arrReferencias["sexo"         ]["tabla"]["indice"] = "id_sexo"           ;
    $arrReferencias["sexo"         ]["tabla"]["desc"  ] = "nombre"            ;
    
    $arrReferencias["estado"       ]["tabla"]["nombre"] = "cat_estados"       ;
    $arrReferencias["estado"       ]["tabla"]["indice"] = "id_estado"         ;
    $arrReferencias["estado"       ]["tabla"]["desc"  ] = "nombre"            ;
    $arrReferencias["estado"       ]["tabla"]["orden" ] = "nombre"            ;
    
    $arrReferencias["marca"        ]["tabla"]["nombre"] = "cat_marcas"        ;
    $arrReferencias["marca"        ]["tabla"]["indice"] = "id_marca"          ;
    $arrReferencias["marca"        ]["tabla"]["desc"  ] = "nombre"            ;
    $arrReferencias["marca"        ]["tabla"]["orden" ] = "nombre"            ;
    
    $arrReferencias["paquete"      ]["tabla"]["nombre"] = "cat_paquetes"      ;
    $arrReferencias["paquete"      ]["tabla"]["indice"] = "id_paquete"        ;
    $arrReferencias["paquete"      ]["tabla"]["desc"  ] = "nombre"            ;
    
    $arrReferencias["forma_pago"   ]["tabla"]["nombre"] = "cat_formas_pago"   ;
    $arrReferencias["forma_pago"   ]["tabla"]["indice"] = "id_forma_pago"     ;
    $arrReferencias["forma_pago"   ]["tabla"]["desc"  ] = "nombre"            ;
    
    $arrReferencias["conducto_pago"]["tabla"]["nombre"] = "cat_conductos_pago";
    $arrReferencias["conducto_pago"]["tabla"]["indice"] = "id_conducto_pago"  ;
    $arrReferencias["conducto_pago"]["tabla"]["desc"  ] = "nombre"            ;

    $arrReferencias["id_vendedor"  ]["tabla"]["nombre"] = "vendedores"        ;
    $arrReferencias["id_vendedor"  ]["tabla"]["indice"] = "id_vendedor"       ;
    $arrReferencias["id_vendedor"  ]["tabla"]["desc"  ] = "nombre"            ;
    
    $this->Inicializar($strClaseBase, $arrProceso, $strOpcionListado, $strOpcionGuardar, $strCampoMostrar, $strClaseFiltro, $arrReferencias, "");
    
    $this->bolABCLista             = true ;
    $this->bolABCListaOcultarTD    = true ;
    $this->bolPosibleNuevoElemento = false;
    $this->intTipoGuardado         = 1    ;
    $this->intNumeroRes            = 20   ;
    $this->bolSoloLectura          = true ;
    $this->bolOcultarTituloEnLista = true ;
    $this->bolABCListaMostrarInfo  = true ;
  }
}

?>